/**
 * 双重断言：
 * 如果在使用类型断言时，原类型与断言类型之间差异过大，TypeScript 也会给一个类型报错
 * 此时它会提醒你先断言到 unknown 类型，再断言到预期类型
*/
const strA: string = "hanxuming";
//错误示例，查看此错误示例报错，先把正确示例注释掉
//(strA as { handler: () => {} }).handler()
//正确示例：
(strA as unknown as { handler: () => {} }).handler();
//正确示例：使用尖括号断言
(<{ handler: () => {} }>(<unknown>strA)).handler();

//export {}：解决“无法重新声明块范围变量”错误提示问题
export { }